/*
 * Copyright © 2017 eqxiu.com 北京中网易企秀科技有限公司  All rights reserved.
 */

package cn.hermit.examples.dubbo.api;

import cn.hermit.examples.dubbo.dto.BookDto;
import cn.hermit.nio.http.Http;
import cn.hermit.nio.http.server.rest.annotation.Operation;
import cn.hermit.nio.http.server.rest.annotation.Param;
import cn.hermit.nio.http.server.rest.annotation.Resource;
import cn.hermit.nio.http.server.rest.annotation.Tag;

import java.util.List;


/**
 * BookStore manager Api
 * @author JackGao 高建国
 * @description //TODO 设计说明
 * @date 8/4/2017
 */
@Resource(tags=@Tag(name="BookStore", description = "BookStore manager Api"))
public interface BookStoreApi {

    /**
     *
     * @return
     *      All Books
     */
    List<BookDto> findAllBooks();

    /**
     *
     * @return
     *      Some Books
     */
    BookDto[] findSomeBooks();

    /**
     * Find Book by ID
     * @param id
     *      Book Id
     * @return
     *      a Book
     */
    @Operation(name= Http.Verb.POST, description = "Find Book by ID", summary = "Find Book by ID")
    BookDto findBookById(@Param(name = "id", description = "Book Id") int id);

}
